The Internet is a network made up of many computer systems, devices, etc. transmitting, receiving, and storing information. In general, client computers (or devices, systems, etc.) initiate requests for content (e.g. files, data, information, etc.) over the Internet network to servers that perform the functions of storing content, etc. and transmitting the content to the client computers in order to satisfy the requests. Several methods are employed in the use of servers and the Internet network to increase the speed of delivery of requested content. For example, in some cases, if the number of requests for certain content exceeds the speed with which a server holding the content would be able to fulfill the requests, the content may be duplicated on more than one server, in order to increase the output speed for the requested content. Another example involves the case of locating servers that are used to store content and fulfill requests as near to the source of the requests as possible, in order to reduce the processing time between a requesting site and the corresponding server(s). Sometimes content can be duplicated or selectively stored on a server or device, called a caching server (e.g. a server that is used to cache content in order to provide quicker delivery) that has been strategically located nearer the source of content requests than the primary server for such content.
Client computer systems, etc. use an IP (Internet Protocol) address to identify and send a content request to any server that holds content which is the subject of a content request. Sometimes the domain name section of Uniform Resource Locators (e.g. URL's) is used to identify servers. The domain name section of Uniform Resource Locators identifies servers using an English-language-like name (e.g. www.cisco.com). In order to use a domain name, a computer program (e.g. an Internet browser) sends a request that includes a domain name to a domain name server. A domain name server is a different kind of server that is capable of storing domain names and/or parts of domain names and IP addresses of servers that the domain names represent. In effect, domain name servers can be used to translate domain names into IP addresses. A domain name server responds to the domain name request by providing the requesting program (e.g. the client's browser program) operating on the requesting client computer system with an IP address translated from the domain name. For example, if the browser on a client computer sends the www.cisco.com domain name to a domain name server, the browser receives the IP address of the www.cisco.com web site back from the domain name server. Upon receipt of the IP address for www.cisco.com, the browser uses the IP address to contact the www.cisco.com server in order to request content.
One method of diverting a request for content to a different server (e.g. another server at the same or at a different location) from the server specified in the initial request, is to execute a redirection. In order to execute a redirection, a server that has received a client request, sends a redirection command (e.g. code 302) back to the client program (e.g. the Internet browser program) on the client computer, along with a domain name of a site to which the browser is to be redirected. As a result of receiving the redirection command (e.g. HTTP code 302), the client program will automatically transmit a new request for the content to the server specified by the new domain name or IP address.